Skip to content

fix(regex): complete PPR compatibility - #1319

Merged
fglock merged 8 commits into
masterfrom
fix/ppr-1318-compatibility
Sep 10, 2026
Merged

fix(regex): complete PPR compatibility#1319
fglock merged 8 commits into
masterfrom
fix/ppr-1318-compatibility

Conversation

@fglock

@fglock fglock commented Sep 9, 2026

Copy link
Copy Markdown
Owner

Summary

Closes #1318.

Status

Draft/WIP. Implementation has not begun; the next step is reducing t/blocks.t to a permanent project-owned regression test.

Validation

  • make check-links

Generated with Codex (https://openai.com/codex)

@fglock
fglock force-pushed the fix/ppr-1318-compatibility branch from 3d15274 to fcccfde Compare September 10, 2026 11:18
@fglock
fglock marked this pull request as ready for review September 10, 2026 11:23
@fglock
fglock force-pushed the fix/ppr-1318-compatibility branch from fcccfde to c93ec7f Compare September 10, 2026 11:27
fglock and others added 7 commits September 10, 2026 14:13
Record the known PPR 0.001010 failures and the staged acceptance plan for
issue #1318 before implementation begins.

Generated with Codex (https://openai.com/codex)

Co-Authored-By: Codex <codex@openai.com>
Treat unordered native capture offsets as nonparticipating captures and keep
recursive-call detection on the active call-frame chain. This clears PPR's
initial range-error family while preserving the remaining heredoc work for
issue #1318.

Generated with Codex (https://openai.com/codex)

Co-Authored-By: Codex <codex@openai.com>
Retain PPR's recursive grammar callbacks and capture state while bounding
Joni's heap-backed backtracking stack. Exhaustion now follows the existing
Perl recursion-exhaustion behavior rather than consuming the JVM heap.

Generated with Codex (https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
Correct recursive capture and nullable-call behavior in Joni, preserve
callback-bearing regexes during empty-pattern reuse, and cover the resulting
PPR grammar paths with focused regressions.

Generated with Codex (https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
Preserve Perl's localized diamond-reader behavior for argumentless readline,
preventing PPR document_self warnings on the JVM backend.

Generated with Codex (https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
Preserve diamond and double-diamond semantics across both backends, including
ARGV lifecycle, EOF handling, diagnostics, and ordinary-diamond fork warnings.

Generated with Codex (https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
Treat a lone '*' in-place extension as extensionless editing and restore the
temporary source when an unhandled error aborts the implicit edit loop.

Generated with [Codex](https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
@fglock
fglock force-pushed the fix/ppr-1318-compatibility branch from c3c8799 to e2c1348 Compare September 10, 2026 12:23
Use File::Spec's platform null device so the ARGV lifecycle regression runs on Windows.

Generated with [Codex](https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
@fglock
fglock merged commit 297bd67 into master Sep 10, 2026
2 checks passed
@fglock
fglock deleted the fix/ppr-1318-compatibility branch September 10, 2026 15:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PPR 0.001010: complete compatibility follow-up after #1299

1 participant